package org.convallaria.system.biz.service;

/**
 * 登录尝试服务接口
 * 
 * @author convallaria
 * @since 1.0.0
 */
public interface LoginAttemptService {

    /**
     * 记录登录失败
     * 
     * @param username 用户名
     * @param ip 登录IP
     */
    void recordFailedAttempt(String username, String ip);

    /**
     * 检查账户是否被锁定
     * 
     * @param username 用户名
     * @param ip 登录IP
     * @return 是否被锁定
     */
    boolean isAccountLocked(String username, String ip);

    /**
     * 清除登录失败记录
     * 
     * @param username 用户名
     * @param ip 登录IP
     */
    void clearFailedAttempts(String username, String ip);
}
